home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / man / cat.8 / lsof.8 < prev    next >
Encoding:
Text File  |  1995-07-31  |  78.4 KB  |  1,651 lines

  1.  
  2.  
  3.  
  4.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  5.  
  6.  
  7.  
  8.      NNNNAAAAMMMMEEEE
  9.           lsof - list open files
  10.  
  11.      SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.           llllssssooooffff [ ----????aaaabbbbCCCChhhhHHHHllllnnnnNNNNooooOOOOPPPPssssttttUUUUwwwwXXXX ] [ ----cccc _c ] [ ----dddd _d ] [ ----DDDD _D ] [ ----FFFF
  13.           [_f] ] [ ----gggg [_s] ] [ ----iiii _i ] [ ----kkkk _k ] [ ----mmmm _m ] [ ----pppp _s ] [ ----rrrr
  14.           [_t] ] [ ----SSSS [_t] ] [ ----uuuu _s ] [ -------- ] _n_a_m_e_s
  15.  
  16.      DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  17.           _L_s_o_f revision 3.37 lists information about files opened by
  18.           processes for the following Unix dialects:
  19.  
  20.                AIX 3.2.4, 3.2.5, 4.1, 4.1.1, and 4.1.2 for the IBM
  21.                     RISC/System 6000
  22.                DC/OSx 1.1 for Pyramid ES, Nile, and S series
  23.                DYNIX 3.0.12 (Purdue version) for the Sequent Symmetry
  24.                EP/IX 2.1.1 for the CDC 4680
  25.                FreeBSD 1.1.5.1, 2.0, and 2.0.5 for Intel-based systems
  26.                HP-UX 8.x, 9.x, and 10 for HP systems
  27.                IRIX 4.0.5H, 5.2, 5.3, and 6.0 for SGI systems
  28.                Linux through 1.2.11 for Intel-based systems
  29.                Motorola V/88 for R32V3, R40V4.2, and R40V4.3 M88K systems
  30.                NetBSD 1.0 and 1.0A for Intel and SPARC-based systems
  31.                NEXTSTEP 2.1 and 3.[0123], all architectures
  32.                Novell UnixWare 1.1, 1.1.1, and 1.1.2 for Intel-based
  33.                     systems
  34.                OSF/1 1.3, 2.0, 3.0, and 3.2 for DEC Alpha
  35.                PTX 2.1.[156] and 4.0.[23] for Sequent systems
  36.                RISC/os 4.52 for MIPS R2000-based systems
  37.                SCO OpenDesktop or OpenServer 1.1, 3.0, and 5.0 for
  38.                     Intel-based systems
  39.                Solaris 2.[1234]
  40.                SunOS 4.1.[1234]
  41.                Ultrix 2.2, 4.2, 4.3, and 4.4 for DEC RISC and VAX
  42.  
  43.           An open file may be a regular file, a directory, a block
  44.           special file, a character special file, an executing text
  45.           reference, a library, a stream or a network file (Internet
  46.           socket, NFS file or Unix domain socket.) A specific file or
  47.           all the files in a file system may be selected by path.
  48.  
  49.           Instead of a formatted display, _l_s_o_f will produce output
  50.           that can be parsed by other programs.  See the ----FFFF, option
  51.           description, and the OOOOUUUUTTTTPPPPUUUUTTTT FFFFOOOORRRR OOOOTTTTHHHHEEEERRRR PPPPRRRROOOOGGGGRRRRAAAAMMMMSSSS section for
  52.           more information.
  53.  
  54.           In addition to producing a single output list, _l_s_o_f will run
  55.           in repeat mode.  In repeat mode it will produce output,
  56.           delay, then repeat the output operation until stopped with
  57.           an interrupt or quit signal.  See the ----rrrr [_t] option
  58.           description for more information.
  59.  
  60.  
  61.  
  62.  
  63.      Page 1                                          (printed 7/31/95)
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  71.  
  72.  
  73.  
  74.           _L_s_o_f may work on other Unix dialects - e.g., AIX 3.2.3,
  75.           EP/IX 1.4.3, FreeBSD 1.0e, HP-UX 7.x, IRIX 5.1.1, NEXTSTEP
  76.           2.[01], and SunOS 4.1 - but has not been tested on any of
  77.           them recently.
  78.  
  79.      OOOOPPPPTTTTIIIIOOOONNNNSSSS
  80.           In the absence of any options, _l_s_o_f lists all open files
  81.           belonging to all active processes.
  82.  
  83.           If any list request option is specified, other list requests
  84.           must be specifically requested - e.g., if ----nnnn is specified
  85.           for the listing of Internet and x.25 (HP-UX) network files,
  86.           NFS files won't be listed unless ----NNNN is also specified; or if
  87.           a user list is specified with the ----uuuu option, Internet and
  88.           x.25 (HP-UX) network files and Unix domain socket files,
  89.           belonging to users not in the list, won't be listed unless
  90.           the ----nnnn and ----UUUU options are also specified.
  91.  
  92.           Normally list options that are specifically stated are ORed
  93.           - i.e., specifying the ----nnnn and ----uuuufoo options produces a
  94.           listing of all network files OR files belonging to processes
  95.           owned by user ``foo''.  The ----aaaa option may be used to AND the
  96.           selections.  For example, specifying ----aaaa, ----nnnn, and ----uuuufoo
  97.           produces a listing of only network files that belong to
  98.           processes owned by user ``foo''.
  99.  
  100.           Caution: the ----aaaa option causes all list selection options to
  101.           be ANDed; it can't be used to cause ANDing of selected pairs
  102.           of selection options by placing it between them, even though
  103.           its placement there is acceptable.  Wherever ----aaaa is placed,
  104.           it causes the ANDing of all selection options.
  105.  
  106.           Items of the same selection set - command names, file
  107.           descriptors, network addresses, process identifiers, user
  108.           identifiers - are joined in a single ORed set and applied
  109.           before the result participates in ANDing.  Thus, for
  110.           example, specifying ----iiii@aaa.bbb, ----iiii@ccc.ddd, ----aaaa, and
  111.           ----uuuufff,ggg will select the listing of files that belong to
  112.           either login ``fff'' OR ``ggg'' AND have network connections
  113.           to either host aaa.bbb OR ccc.ddd.
  114.  
  115.           Values are optional following several options: ----FFFF, ----gggg, ----rrrr,
  116.           and ----SSSS.  When you have no values for these options, be
  117.           careful that the following character isn't ambiguous.  For
  118.           example, ----FFFFnnnn might represent the ----FFFF and ----nnnn options, or it
  119.           might represent the nnnn field identifier character following
  120.           the ----FFFF option.  When ambiguity is possible, start a new
  121.           option with a `-' character - e.g., ``----FFFF ----nnnn''.  If the next
  122.           option is a file name, follow the possibly ambiguous option
  123.           with ``--'' - e.g., ``----FFFF -------- _n_a_m_e''.
  124.  
  125.           ----???? ----hhhh    These two options select a usage (help) output
  126.  
  127.  
  128.  
  129.      Page 2                                          (printed 7/31/95)
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  137.  
  138.  
  139.  
  140.                    list.  _L_s_o_f displays a shortened form of this
  141.                    output when it detects an error in the options
  142.                    supplied to it, after it has displayed messages
  143.                    explaining each error.
  144.  
  145.           ----aaaa       This option causes list selection options to be
  146.                    ANDed, as described above.
  147.  
  148.           ----bbbb       This option causes _l_s_o_f to avoid kernel functions
  149.                    that might block - _l_s_t_a_t(2), _r_e_a_d_l_i_n_k(2), and
  150.                    _s_t_a_t(2).
  151.  
  152.                    See the BBBBLLLLOOOOCCCCKKKKSSSS AAAANNNNDDDD TTTTIIIIMMMMEEEEOOOOUUUUTTTTSSSS and AAAAVVVVOOOOIIIIDDDDIIIINNNNGGGG KKKKEEEERRRRNNNNEEEELLLL
  153.                    BBBBLLLLOOOOCCCCKKKKSSSS sections for information on using this
  154.                    option.
  155.  
  156.           ----cccc _c     This option selects the listing of files for
  157.                    processes executing the command named _c.  Multiple
  158.                    commands may be specified, using multiple ----cccc
  159.                    options.  They are joined in a single ORed set
  160.                    before participating in AND option selection.
  161.  
  162.                    Caution: since _l_s_o_f truncates command names to nine
  163.                    characters, when you specify a name longer than
  164.                    that with ----cccc, _l_s_o_f won't find it.
  165.  
  166.           ----CCCC       This option disables the reporting of partial path
  167.                    name components from the kernel's name cache.  See
  168.                    the KKKKEEEERRRRNNNNEEEELLLL NNNNAAAAMMMMEEEE CCCCAAAACCCCHHHHEEEE section for more information.
  169.  
  170.           ----dddd _d     This option selects the listing of files whose file
  171.                    descriptor number or name is _d.  Multiple file
  172.                    descriptors my be specified, using multiple ----dddd
  173.                    options.  They are joined in a single ORed set
  174.                    before participating in AND option selection.  See
  175.                    the description of File Descriptor (FD) output
  176.                    values in the OOOOUUUUTTTTPPPPUUUUTTTT section for more information
  177.                    on file descriptor names.
  178.  
  179.           ----DDDD _D     This option directs _l_s_o_f'_s use of the device cache
  180.                    file.  (See the DDDDEEEEVVVVIIIICCCCEEEE CCCCAAAACCCCHHHHEEEE FFFFIIIILLLLEEEE for more
  181.                    information on it.)
  182.  
  183.                    ----DDDD must be followed by a function letter; the
  184.                    function letter may optionally be followed by a
  185.                    path name.  _L_s_o_f recognizes these function letters:
  186.  
  187.  
  188.                         bbbb - build the device cache
  189.                         iiii - ignore the device cache
  190.                         rrrr - read the device cache
  191.                         uuuu - read and update the device cache
  192.  
  193.  
  194.  
  195.      Page 3                                          (printed 7/31/95)
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  203.  
  204.  
  205.  
  206.                    The iiii, rrrr, and uuuu functions may be followed by the
  207.                    device cache file's path.  The standard default is
  208.                    /_t_m_p/._l_s_o_f__d_e_v__c_a_c_h_e, but this could have been
  209.                    changed when _l_s_o_f was configured and compiled.
  210.                    (The output of the ----???? and ----hhhh options show the
  211.                    current default.)
  212.  
  213.                    The bbbb function directs _l_s_o_f to build a new device
  214.                    cache file at the default or specified path.
  215.  
  216.                    The iiii function directs _l_s_o_f to ignore the default
  217.                    device cache file and obtain its information about
  218.                    devices via direct calls to the kernel.
  219.  
  220.                    The rrrr function directs _l_s_o_f to read the device
  221.                    cache at the default or specified path, but
  222.                    prevents it from creating a new device cache file
  223.                    when none exists or the existing one is improperly
  224.                    structured.
  225.  
  226.                    The uuuu function directs _l_s_o_f to read the device
  227.                    cache file at the default or specified path, if
  228.                    possible, and to rebuild it, if necessary.  This is
  229.                    the default device cache file function when no ----DDDD
  230.                    option has been specified.
  231.  
  232.           ----FFFF _f     This option specifies a character list, _f, that
  233.                    selects the fields to be output for processing by
  234.                    another program, and the character that terminates
  235.                    each output field.  Each field to be output is
  236.                    specified with a single character in _f.  The field
  237.                    terminator defaults to NL, but may be changed to
  238.                    NUL (000).  See the OOOOUUUUTTTTPPPPUUUUTTTT FFFFOOOORRRR OOOOTTTTHHHHEEEERRRR PPPPRRRROOOOGGGGRRRRAAAAMMMMSSSS
  239.                    section for a description of the field
  240.                    identification characters and the field output
  241.                    process.
  242.  
  243.                    When the field selection character list is empty,
  244.                    all fields are selected and the NL field terminator
  245.                    is used.
  246.  
  247.                    When the field selection character list contains
  248.                    only a zero (`0'), all fields are selected and the
  249.                    NUL terminator character is used.
  250.  
  251.                    Other combinations of fields and their associated
  252.                    field terminator character must be set with
  253.                    explicit entries in _f, as described in the OOOOUUUUTTTTPPPPUUUUTTTT
  254.                    FFFFOOOORRRR OOOOTTTTHHHHEEEERRRR PPPPRRRROOOOGGGGRRRRAAAAMMMMSSSS section.
  255.  
  256.                    When the field selection character list contains
  257.                    the single character `?', _l_s_o_f will display a help
  258.  
  259.  
  260.  
  261.      Page 4                                          (printed 7/31/95)
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  269.  
  270.  
  271.  
  272.                    list of the field identification characters.
  273.                    (Escape the `?' character as your shell requires.)
  274.  
  275.           ----gggg [_s]   This option selects the listing of files for the
  276.                    processes whose optional process group
  277.                    IDentification (PGRP) numbers are in the
  278.                    comma-separated set _s - e.g., ``123'' or
  279.                    ``123,456''.  (There should be no spaces in the
  280.                    set.)
  281.  
  282.                    Multiple PGRP numbers are joined in a single ORed
  283.                    set before participating in AND option selection.
  284.  
  285.                    The ----gggg option also enables the output display of
  286.                    PGRP numbers.  When specified without a PGRP set
  287.                    that's all it does.
  288.  
  289.           ----HHHH       This option inhibits the conversion of network
  290.                    numbers to host names for network files.
  291.                    Inhibiting conversion may make _l_s_o_f run a little
  292.                    faster.  It is also useful when host name lookup is
  293.                    not working properly.
  294.  
  295.           ----iiii _i     This option selects the listing of files any of
  296.                    whose Internet address matches the address
  297.                    specified in _i.  Multiple addresses may be
  298.                    specified with multiple ----iiii options.  They are
  299.                    joined in a single ORed set before participating in
  300.                    AND option selection.
  301.  
  302.                    An Internet address is specified in the form:
  303.  
  304.                    [_p_r_o_t_o_c_o_l][@_h_o_s_t_n_a_m_e|_h_o_s_t_a_d_d_r][:_s_e_r_v_i_c_e|_p_o_r_t]
  305.  
  306.                    where:
  307.                         _p_r_o_t_o_c_o_l is a protocol name - e.g., TTTTCCCCPPPP.
  308.                         _h_o_s_t_n_a_m_e is an Internet host name.
  309.                         _h_o_s_t_a_d_d_r is an Internet host address in dot form.
  310.                         _s_e_r_v_i_c_e is an /_e_t_c/_s_e_r_v_i_c_e_s name - e.g., ssssmmmmttttpppp.
  311.                         _p_o_r_t is a port number.
  312.  
  313.                    At least one address component - _p_r_o_t_o_c_o_l, host
  314.                    specification, or port specification - must be
  315.                    supplied.  The `@' character, leading the host
  316.                    specification, is always required; as is the `:',
  317.                    leading the port specification.  Specify either
  318.                    _h_o_s_t_n_a_m_e or _h_o_s_t_a_d_d_r.  Specify either _s_e_r_v_i_c_e name
  319.                    or _p_o_r_t number.  If _s_e_r_v_i_c_e is specified, _p_r_o_t_o_c_o_l
  320.                    must also be specified.  Use any case - lower or
  321.                    upper - for _p_r_o_t_o_c_o_l.
  322.  
  323.                    Here are some sample addresses:
  324.  
  325.  
  326.  
  327.      Page 5                                          (printed 7/31/95)
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  335.  
  336.  
  337.  
  338.                         TCP:25 - TCP and port 25
  339.                         @1.2.3.4 - Internet host address 1.2.3.4
  340.                         UDP:who - UDP who service port
  341.                         TCP@vic.cc:513 - TCP, port 513 and host name vic.cc
  342.  
  343.           ----kkkk _k     This option specifies a kernel name list file, _k,
  344.                    in place of /vmunix, /mach, /dynix, etc.  This
  345.                    option is not available under AIX on the IBM
  346.                    RISC/System 6000.
  347.  
  348.           ----llll       This option inhibits the conversion of user ID
  349.                    numbers to login names.  It is also useful when
  350.                    login name lookup is working improperly or slowly.
  351.  
  352.           ----mmmm _m     This option specifies a kernel memory file, _c, in
  353.                    place of /dev/kmem or /dev/mem - e.g., a crash dump
  354.                    file.
  355.  
  356.           ----nnnn       This option selects the listing of Internet and
  357.                    x.25 (HP-UX) network files.
  358.  
  359.           ----NNNN       This option selects the listing of NFS files.
  360.  
  361.           ----oooo       This option directs _l_s_o_f to display file offset at
  362.                    all times.  It causes the SIZE/OFF output column
  363.                    title to be changed to OFFSET.
  364.  
  365.                    The ----oooo and ----ssss options are mutually exclusive; they
  366.                    can't both be specified.  When neither is
  367.                    specified, _l_s_o_f displays whatever value - size or
  368.                    offset - is appropriate for the type of the file.
  369.  
  370.           ----OOOO       This option directs _l_s_o_f to bypass the strategy it
  371.                    uses to avoid being blocked by some kernel
  372.                    operations - i.e., doing them in forked child
  373.                    processes.  See the BBBBLLLLOOOOCCCCKKKKSSSS AAAANNNNDDDD TTTTIIIIMMMMEEEEOOOOUUUUTTTTSSSS and
  374.                    AAAAVVVVOOOOIIIIDDDDIIIINNNNGGGG KKKKEEEERRRRNNNNEEEELLLL BBBBLLLLOOOOCCCCKKKKSSSS for more information on
  375.                    kernel operations that may block _l_s_o_f.
  376.  
  377.                    While use of this option will reduce _l_s_o_f startup
  378.                    overhead, it may also cause _l_s_o_f to hang when the
  379.                    kernel doesn't respond to a function.  Use this
  380.                    option cautiously.
  381.  
  382.           ----pppp _s     This option selects the listing of files for the
  383.                    processes whose ID numbers are in the
  384.                    comma-separated set _s - e.g., ``123'' or
  385.                    ``123,456''.  (There should be no spaces in the
  386.                    set.)
  387.  
  388.                    Multiple process ID numbers are joined in a single
  389.                    ORed set before participating in AND option
  390.  
  391.  
  392.  
  393.      Page 6                                          (printed 7/31/95)
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  401.  
  402.  
  403.  
  404.                    selection.
  405.  
  406.           ----PPPP       This option inhibits the conversion of port numbers
  407.                    to port names for network files.  Inhibiting the
  408.                    conversion may make _l_s_o_f run a little faster.  It
  409.                    is also useful when host name lookup is not working
  410.                    properly.
  411.  
  412.           ----rrrr [_t]   This option puts _l_s_o_f in repeat mode.  There _l_s_o_f
  413.                    displays output on open files as selected by other
  414.                    options, delays _t seconds (the default is fifteen),
  415.                    then repeats its output display, delaying and
  416.                    producing output repetitively until stopped with an
  417.                    interrupt or quit signal.  When no delay time, _t,
  418.                    is specified, _l_s_o_f uses a default of fifteen.
  419.  
  420.                    _L_s_o_f marks the end of each set of output: if field
  421.                    output is in progress (the ----FFFF, option has been
  422.                    specified), the marker is `m'; otherwise the marker
  423.                    is ``========''.  The marker is followed by a NL
  424.                    character.
  425.  
  426.                    Repeat mode reduces _l_s_o_f startup overhead, so it is
  427.                    more efficient to use this mode than to call _l_s_o_f
  428.                    repetitively from a shell script, for example.
  429.  
  430.                    To use repeat mode most efficiently, accompany ----rrrr
  431.                    with specification of other _l_s_o_f selection options,
  432.                    so the amount of kernel memory access _l_s_o_f does
  433.                    will be kept to a minimum.  Options that filter at
  434.                    the process level - e.g., ----cccc, ----gggg, ----pppp, ----uuuu - are the
  435.                    most efficient selectors.
  436.  
  437.                    Repeat mode is useful when coupled with field
  438.                    output (see the ----FFFF, option description) and a
  439.                    supervising _a_w_k or _p_e_r_l script.
  440.  
  441.           ----ssss       This option directs _l_s_o_f to display file size at
  442.                    all times.  It causes the SIZE/OFF output column
  443.                    title to be changed to SIZE.  If the file does not
  444.                    have a size, nothing is displayed.
  445.  
  446.                    The ----oooo and ----ssss options are mutually exclusive; they
  447.                    can't both be specified.  When neither is
  448.                    specified, _l_s_o_f displays whatever value - size or
  449.                    offset - is appropriate for the type of file.
  450.  
  451.           ----SSSS [_t]   This option specifies an optional time-out seconds
  452.                    value for kernel functions - _l_s_t_a_t(2), _r_e_a_d_l_i_n_k(2),
  453.                    and _s_t_a_t(2) - that might otherwise deadlock.  The
  454.                    minimum for _t is two; the default, fifteen; when no
  455.                    value is specified, the default is used.
  456.  
  457.  
  458.  
  459.      Page 7                                          (printed 7/31/95)
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  467.  
  468.  
  469.  
  470.                    See the BBBBLLLLOOOOCCCCKKKKSSSS AAAANNNNDDDD TTTTIIIIMMMMEEEEOOOOUUUUTTTTSSSS section for more
  471.                    information.
  472.  
  473.           ----tttt       This option specifies that _l_s_o_f should produce
  474.                    terse output with process identifiers only and no
  475.                    header - e.g., so that the output may be piped to
  476.                    _k_i_l_l(1).  This option selects the ----wwww option.
  477.  
  478.           ----uuuu _s     This option selects the listing of files for the
  479.                    user whose login names or user ID numbers are in
  480.                    the comma-separated set _s - e.g., ``abe'', or
  481.                    ``548,root''.  (There should be no spaces in the
  482.                    set.)
  483.  
  484.                    Multiple login names or user ID numbers are joined
  485.                    in a single ORed set before participating in AND
  486.                    option selection.
  487.  
  488.           ----UUUU       This option selects the listing of Unix domain
  489.                    socket files.
  490.  
  491.           ----wwww       This option causes _l_s_o_f to suppress all warning
  492.                    messages.  The ----tttt option selects this option.
  493.  
  494.           ----XXXX       This is a dialect-specific option.
  495.  
  496.                    AIX:
  497.  
  498.                        WWWWAAAARRRRNNNNIIIINNNNGGGG:::: use of this option on a busy AIX
  499.                        system might cause an application process to
  500.                        hang so completely that it can neither be
  501.                        killed nor stopped.  I have never seen this
  502.                        happen or had a report of it, but I think the
  503.                        possibility exists.
  504.  
  505.                        This option directs _l_s_o_f to use the kernel
  506.                        readx() function.  By default use of readx() is
  507.                        disabled.
  508.  
  509.                        When AIX readx() use is disabled, _l_s_o_f may not
  510.                        be able to report information for all text and
  511.                        loader file references, but it may also avoid
  512.                        exacerbating an AIX 3.2.x and 4.1[.x] kernel
  513.                        directory search kernel error, known as the
  514.                        Stale Segment ID bug.
  515.  
  516.                        When readx() is enabled, _l_s_o_f will attempt to
  517.                        report information on the text file being
  518.                        executed by each process and the shared
  519.                        libraries it uses.
  520.  
  521.                        The readx() function, used by _l_s_o_f or any other
  522.  
  523.  
  524.  
  525.      Page 8                                          (printed 7/31/95)
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  533.  
  534.  
  535.  
  536.                        program, to access some sections of kernel
  537.                        virtual memory, can trigger the Stale Segment
  538.                        ID bug.  It can cause the kernel's dir_search()
  539.                        function erroneously to believe that part of an
  540.                        in-memory copy of a file system directory has
  541.                        been zeroed.  Another application process,
  542.                        distinct from _l_s_o_f, asking the kernel to search
  543.                        the directory - e.g., by using _o_p_e_n(2) - can
  544.                        cause dir_search() to loop forever, thus
  545.                        hanging the application process.
  546.  
  547.                        Consult the 00FAQ and 00README files of the
  548.                        _l_s_o_f distribution for a more complete
  549.                        description of the Stale Segment ID bug, its
  550.                        APAR, and methods for defining readx() use when
  551.                        compiling _l_s_o_f.
  552.  
  553.           --------       The double minus sign option is a marker that
  554.                    signals the end of the keyed options.  It may be
  555.                    used, for example, when the first file name begins
  556.                    with a minus sign.  It may also be used when the
  557.                    absence of a value for the last keyed option must
  558.                    be signified by the presence of a minus sign in the
  559.                    following option and before the start of the file
  560.                    names.
  561.  
  562.           _n_a_m_e_s    These are path names of specific files to list.
  563.                    Symbolic links are resolved before use.  The first
  564.                    name may be separated from the preceding options
  565.                    with the ``--'' option.
  566.  
  567.                    If a _n_a_m_e is the mount point of a file system or
  568.                    the device of the mount point of a file system,
  569.                    _l_s_o_f will list all the files open on the file
  570.                    system.  If a _n_a_m_e is the base name of a family of
  571.                    multiplexed files - e. g, AIX's /_d_e_v/_p_t_s - _l_s_o_f
  572.                    will list all the associated multipled files on the
  573.                    device that are open - e.g., /_d_e_v/_p_t_s/_1,
  574.                    /_d_e_v/_p_t_s/_2, etc.
  575.  
  576.                    If a _n_a_m_e is a Unix domain socket name, _l_s_o_f will
  577.                    search for it by the characters of the name alone -
  578.                    both as specified and as resolved from symbolic
  579.                    links.  When the socket uses a name that is a
  580.                    symbolic link to another, you must specify the name
  581.                    the socket uses.  However, if the socket uses the
  582.                    symbolic link's resolution, you may specify it or
  583.                    the symbolic link origination.  When asking _l_s_o_f to
  584.                    search for a Unix domain socket name, be careful to
  585.                    specify its absolute path, just as it appears in
  586.                    kernel structures.  Specifying a relative path -
  587.                    e.g.  ./_f_i_l_e - in place of the file's absolute path
  588.  
  589.  
  590.  
  591.      Page 9                                          (printed 7/31/95)
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  599.  
  600.  
  601.  
  602.                    - e.g., /_t_m_p/_f_i_l_e - won't work because _l_s_o_f must
  603.                    match the characters you specify with what it finds
  604.                    in the kernel structures associated with Unix
  605.                    domain sockets.
  606.  
  607.                    If a _n_a_m_e is none of the above, _l_s_o_f will list any
  608.                    open files whose device and inode match that of the
  609.                    specified path _n_a_m_e.
  610.  
  611.                    If you have also specified the ----bbbb option, the only
  612.                    _n_a_m_e_s you may safely specify are file systems for
  613.                    which your mount table supplies alternate device
  614.                    numbers.  See the AAAAVVVVOOOOIIIIDDDDIIIINNNNGGGG KKKKEEEERRRRNNNNEEEELLLL BBBBLLLLOOOOCCCCKKKKSSSS and
  615.                    AAAALLLLTTTTEEEERRRRNNNNAAAATTTTEEEE DDDDEEEEVVVVIIIICCCCEEEE NNNNUUUUMMMMBBBBEEEERRRRSSSS sections for more
  616.                    information.
  617.  
  618.                    Multiple file names are joined in a single ORed set
  619.                    before participating in AND option selection.
  620.  
  621.      SSSSEEEECCCCUUUURRRRIIIITTTTYYYY
  622.           At the local administrator's discretion, _l_s_o_f may be
  623.           constructed with its security option enabled or disabled.
  624.           When the security option is enabled, _l_s_o_f will allow only
  625.           the root user to list all open files.  The non-root user may
  626.           list only open files of processes with the same user
  627.           IDentification number as the real user ID number of the _l_s_o_f
  628.           process (the one that its user logged on with).  When the
  629.           security option is disabled, anyone may list all open files.
  630.  
  631.           The last line of the help output, presented in response to
  632.           the ----???? or ----hhhh option, gives the security mode status.
  633.  
  634.           If the _l_s_o_f user declares alternate kernel name list or
  635.           memory files with the ----cccc and ----kkkk options, _l_s_o_f will check the
  636.           user's authority to read them with _a_c_c_e_s_s(2).  This prevents
  637.           whatever special power _l_s_o_f'_s modes might confer on it from
  638.           letting it read files not normally accessible via the
  639.           authority of the real user ID.
  640.  
  641.      OOOOUUUUTTTTPPPPUUUUTTTT
  642.           This section describes the information _l_s_o_f lists for each
  643.           open file.  See the OOOOUUUUTTTTPPPPUUUUTTTT FFFFOOOORRRR OOOOTTTTHHHHEEEERRRR PPPPRRRROOOOGGGGRRRRAAAAMMMMSSSS section for
  644.           additional information on output that can be processed by
  645.           another program.
  646.  
  647.           COMMAND    contains the first nine characters of the name of
  648.                      the Unix command associated with the process.
  649.  
  650.           PID        is the Process IDentification number of the
  651.                      process.
  652.  
  653.           PGRP       is the process group IDentification number
  654.  
  655.  
  656.  
  657.      Page 10                                         (printed 7/31/95)
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  665.  
  666.  
  667.  
  668.                      associated with the process.  It is only
  669.                      displayed when the ----gggg option has been specified.
  670.  
  671.           USER       is the user ID number or login name of the user
  672.                      to whom the process belongs.  (See the ----llll
  673.                      option.)
  674.  
  675.           FD         is the File Descriptor number of the file or:
  676.  
  677.  
  678.                           ccccwwwwdddd  current working directory;
  679.                           LLLL_n_n  library references;
  680.                           llllttttxxxx  shared library text (code and data);
  681.                           MMMMxxxxxxxx  hex memory-mapped type number xx.
  682.                           mmmm88886666  DOS Merge mapped file;
  683.                           mmmmeeeemmmm  memory-mapped file;
  684.                           ppppdddd   parent directory;
  685.                           rrrrttttdddd  root directory;
  686.                           ttttxxxxtttt  program text (code and data);
  687.                           vvvv88886666  VP/ix mapped file;
  688.  
  689.                      FD is followed by one of these characters,
  690.                      describing the mode under which the file is open:
  691.  
  692.                           rrrr for read access;
  693.                           wwww for write access;
  694.                           uuuu for read and write access;
  695.                           space if unknown (e.g., ccccwwwwdddd or ttttxxxxtttt).
  696.  
  697.                      The mode character is followed by one of these
  698.                      characters, describing the type of lock applied
  699.                      to the file:
  700.  
  701.                           rrrr for read lock on part of the file;
  702.                           RRRR for a read lock on the entire file;
  703.                           wwww for a write lock on part of the file;
  704.                           WWWW for a write lock on the entire file;
  705.                           space if there is no lock.
  706.  
  707.           TYPE       is the type of the node associated with the file
  708.                      - e.g., GDIR, GREG, VDIR, VREG, etc.
  709.  
  710.                      or ``dnet'' for a DECnet socket;
  711.  
  712.                      or ``inet'' for an Internet domain socket;
  713.  
  714.                      or ``lla'' for a HP-UX link level access file;
  715.  
  716.                      or ``rte'' for an AF_ROUTE socket;
  717.  
  718.                      or ``sock'' for a socket of unknown domain;
  719.  
  720.  
  721.  
  722.  
  723.      Page 11                                         (printed 7/31/95)
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  731.  
  732.  
  733.  
  734.                      or ``unix'' for a Unix domain socket;
  735.  
  736.                      or ``x.25'' for an HP-UX x.25 socket;
  737.  
  738.                      or ``BLK'' for a block special file;
  739.  
  740.                      or ``CHR'' for a character special file;
  741.  
  742.                      or ``DIR'' for a directory;
  743.  
  744.                      or ``FIFO'' for a FIFO special file;
  745.  
  746.                      or ``LINK'' for a symbolic link file;
  747.  
  748.                      or ``MPB'' for a multiplexed block file;
  749.  
  750.                      or ``MPC'' for a multiplexed character file;
  751.  
  752.                      or ``PCTL'' for a /proc control file;
  753.  
  754.                      or ``PCUR'' for the current /proc process;
  755.  
  756.                      or ``PDIR'' for a /proc directory;
  757.  
  758.                      or ``PFIL'' for an executable /proc file;
  759.  
  760.                      or ``PFPR'' for a /proc FP register set;
  761.  
  762.                      or ``PGRP'' for a /proc group notifier file;
  763.  
  764.                      or ``PIPE'' for an Ultrix 4.2 pipe;
  765.  
  766.                      or ``PMEM'' for a /proc memory image file;
  767.  
  768.                      or ``PNTF'' for a /proc process notifier file;
  769.  
  770.                      or ``PORT'' for an Ultrix SYSV named pipe;
  771.  
  772.                      or ``PREG'' for a /proc register file;
  773.  
  774.                      or ``PSTA'' for a /proc status file;
  775.  
  776.                      or ``REG'' for a regular file.
  777.  
  778.           DEVICE     contains the major and minor device numbers for a
  779.                      character special, block special, regular,
  780.                      directory or NFS file (an HP-UX minor device
  781.                      number is listed in hexadecimal, as is a DEC
  782.                      OSF/1 minor device number larger than 99,999);
  783.  
  784.                      or the protocol control block address of a DECnet
  785.                      (Ultrix 4.[23]), Internet, Unix, or x.25 (HP-UX)
  786.  
  787.  
  788.  
  789.      Page 12                                         (printed 7/31/95)
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  797.  
  798.  
  799.  
  800.                      network file - the address that appears in the ----AAAA
  801.                      output from some _n_e_t_s_t_a_t(1) programs;
  802.  
  803.                      or ``memory'' for a memory file system node under
  804.                      OSF/1 on the DEC Alpha;
  805.  
  806.                      or the address of the private data area of a
  807.                      Solaris socket stream;
  808.  
  809.                      or a kernel reference address that identifies the
  810.                      file.  The kernel reference address may be used
  811.                      for FIFO's, for example.
  812.  
  813.                      Usually only the lower thirty two bits of OSF/1
  814.                      DEC Alpha kernel addresses are displayed.
  815.  
  816.           SIZE/OFF or OFFSET
  817.                      is the size of the file or the file offset in
  818.                      bytes.  _L_s_o_f displays whatever value - size or
  819.                      offset - is appropriate for the type of the file.
  820.                      The file size is displayed in decimal; the offset
  821.                      is displayed in decimal with a leading ``0t'' if
  822.                      it is less than 100,000,000; in hexadecimal with
  823.                      a leading ``0x'' if it is larger than 99,999,999.
  824.                      Thus the leading ``0t'' and ``0x'' identify an
  825.                      offset when the column may contain both a size
  826.                      and an offset (i.e., its title is SIZE/OFF).
  827.  
  828.                      If the ----oooo option is specified, _l_s_o_f always
  829.                      displays the file offset (or nothing if no offset
  830.                      is available) and labels the column OFFSET.  The
  831.                      offset always begins with ``0t'' or ``0x'' as
  832.                      described above.  If the ----ssss option is specified,
  833.                      _l_s_o_f always displays the file size (or nothing if
  834.                      no size is available) and labels the column SIZE.
  835.                      The ----oooo and ----ssss options are mutually exclusive;
  836.                      they can't both be specified.
  837.  
  838.                      If size is being displayed and the mode of a Unix
  839.                      domain socket is read-only, the receive buffer
  840.                      size is displayed; write-only, the write buffer
  841.                      size; read and write, the sum of the two buffer
  842.                      sizes.
  843.  
  844.                      If size is being displayed and the mode of a
  845.                      Solaris TCP socket is read-only, the undelivered
  846.                      receive window size is displayed; write-only, the
  847.                      unacknowledged transmit window size; read and
  848.                      write, the sum of the two window sizes.
  849.  
  850.           INODE      is the inode number of a local file, truncated
  851.                      and prefixed with an asterisk (`*') if it is too
  852.  
  853.  
  854.  
  855.      Page 13                                         (printed 7/31/95)
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  863.  
  864.  
  865.  
  866.                      large for the output field;
  867.  
  868.                      or the inode number of an NFS file in the server
  869.                      host, truncated and prefixed with an asterisk
  870.                      (`*') if the number is too large for the output
  871.                      field; ;
  872.  
  873.                      or the Internet protocol type - e. g, ``TCP'';
  874.  
  875.                      or ``STR'' for a stream;
  876.  
  877.                      or ``CCITT'' for an HP-UX x.25 socket.
  878.  
  879.           NAME       is the name of the mount point and file system on
  880.                      which the file resides (Under IRIX 5.2 the
  881.                      appearance of ``(PIPE)'' identifies a pipe
  882.                      file.);
  883.  
  884.                      or the name of a file specified in the _n_a_m_e_s
  885.                      option (after any symbolic links have been
  886.                      resolved);
  887.  
  888.                      or the name of a character special or block
  889.                      special device;
  890.  
  891.                      or the local and remote Internet addresses of a
  892.                      network file (as numbers or names, depending on
  893.                      the ----HHHH and ----PPPP options); a UDP destination
  894.                      Internet address may be followed by the amount of
  895.                      time that's elapsed since the last packet was
  896.                      sent to the destination;
  897.  
  898.                      or the local and remote node and object addresses
  899.                      of a DECnet file (The node address appears as an
  900.                      _a_r_e_a._n_o_d_e number pair if the ----HHHH option is
  901.                      specified.);
  902.  
  903.                      or the address or name of a Unix domain socket;
  904.  
  905.                      or the local and remote mount point names of an
  906.                      NFS file;
  907.  
  908.                      or ``STR'', followed by the stream name;
  909.  
  910.                      or a stream character device name, followed by
  911.                      ``->'' and the stream name;
  912.  
  913.                      or ``STR:'' followed by the SCO Unix stream
  914.                      device and module names, separated by ``->'';
  915.  
  916.                      or the SunOS current working or root directory
  917.                      path name;
  918.  
  919.  
  920.  
  921.      Page 14                                         (printed 7/31/95)
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  929.  
  930.  
  931.  
  932.                      system directory name, `` -- '', and as many
  933.                      components of the path name as _l_s_o_f can find in
  934.                      the kernel's name cache for selected dialects
  935.                      (See the KKKKEEEERRRRNNNNEEEELLLL NNNNAAAAMMMMEEEE CCCCAAAACCCCHHHHEEEE section for more
  936.                      information.);
  937.  
  938.                      or ``PIPE->'', followed by a Solaris kernel pipe
  939.                      destination address;
  940.  
  941.                      or ``COMMON:'' for an IRIX (versions below 5.2)
  942.                      common file system entry;
  943.  
  944.                      or ``COMMON:'', followed by the vnode device
  945.                      information structure's device name, for a
  946.                      Solaris common vnode;
  947.  
  948.                      or the address family, followed by a slash (`/'),
  949.                      followed by fourteen comma-separated bytes of a
  950.                      non-Internet raw socket address;
  951.  
  952.                      or the HP-UX x.25 local address, followed by the
  953.                      virtual connection number (if any), followed by
  954.                      the remote address (if any);
  955.  
  956.                      or ``(dead)'' for disassociated OSF/1 DEC Alpha
  957.                      files - typically terminal files that have been
  958.                      flagged with the TIOCNOTTY ioctl and closed by
  959.                      daemons;
  960.  
  961.                      or ``rrrr=_c_o_u_n_t/_b_y_t_e_s wwww=_c_o_u_n_t/_b_y_t_e_s'' for incomplete
  962.                      EP/IX 2.1.1 file structures (ones with no vnode
  963.                      or socket pointer), with
  964.                           rrrr signifying read statistics,
  965.                           _c_o_u_n_t giving the operation count,
  966.                           _b_y_t_e_s giving bytes transferred,
  967.                           wwww signifying write statistics;
  968.  
  969.                      or ``rd=<offset>'' and ``wr=<offset>'' for the
  970.                      values of the read and write offsets of a FIFO.
  971.  
  972.      OOOOUUUUTTTTPPPPUUUUTTTT FFFFOOOORRRR OOOOTTTTHHHHEEEERRRR PPPPRRRROOOOGGGGRRRRAAAAMMMMSSSS
  973.           When the ----FFFF option is specified, _l_s_o_f produces output that
  974.           is suitable for processing by another program - e.g, an _a_w_k
  975.           or _p_e_r_l script.
  976.  
  977.           Each unit of information is output in a field that is
  978.           identified with a leading character and terminated by a NL
  979.           (012) (or a NUL (000) if the 0 (zero) field identifier
  980.           character is specified.) The data of the field follows
  981.           immediately after the field identification character and
  982.           extends to the field terminator.
  983.  
  984.  
  985.  
  986.  
  987.      Page 15                                         (printed 7/31/95)
  988.  
  989.  
  990.  
  991.  
  992.  
  993.  
  994.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  995.  
  996.  
  997.  
  998.           It is possible to think of field output as process and file
  999.           sets.  A process set begins with a field whose identifier is
  1000.           `p' (for process IDentifier (PID)).  It extends to the
  1001.           beginning of the next PID field or the beginning of the
  1002.           first file set of the process, whichever comes first.
  1003.           Included in the process set are fields that identify the
  1004.           command, the process group IDentification (PGRP) number, and
  1005.           the user ID (UID) number or login name.
  1006.  
  1007.           A file set begins with a field whose identifier is `f' (for
  1008.           file descriptor).  It is followed by lines that describe the
  1009.           file's access mode, lock state, type, device, size, offset,
  1010.           inode, protocol, name and stream module names.  It extends
  1011.           to the beginning of the next file or process set, whichever
  1012.           comes first.
  1013.  
  1014.           When the NUL (000) field terminator has been selected with
  1015.           the 0 (zero) field identifier character, _l_s_o_f ends each
  1016.           process and file set with a NL (012) character.
  1017.  
  1018.           _L_s_o_f always produces one field, the PID (`p') field.  All
  1019.           other fields may be declared optionally in the field
  1020.           identifier character list that follows the ----FFFF option.
  1021.  
  1022.           It is entirely possible to select a set of fields that
  1023.           cannot easily be parsed - e.g., if the field descriptor
  1024.           field is not selected, it may be difficult to identify file
  1025.           sets.  To help you avoid this difficulty, _l_s_o_f supports the
  1026.           ----FFFF option; it selects the output of all fields with NL
  1027.           terminators (the ----FFFF0000 option pair selects the output of all
  1028.           fields with NUL terminators).
  1029.  
  1030.           These are the fields that _l_s_o_f will produce.  The single
  1031.           character listed first is the field identifier.
  1032.  
  1033.                a    file access mode
  1034.                c    process command name
  1035.                d    file's device character code
  1036.                D    file's major/minor device number (0x<hexadecimal>)
  1037.                f    file descriptor
  1038.                i    file's inode number
  1039.                l    file's lock status
  1040.                L    process login name
  1041.                m    marker between repeated output
  1042.                n    file name, comment, Internet address
  1043.                o    file's offset (0t<decimal> or 0x<hexadecimal>)
  1044.                p    process ID (always selected)
  1045.                g    process group ID
  1046.                P    protocol name
  1047.                s    file's size
  1048.                S    file's stream identification
  1049.                t    file's type
  1050.  
  1051.  
  1052.  
  1053.      Page 16                                         (printed 7/31/95)
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  1061.  
  1062.  
  1063.  
  1064.                u    process user ID
  1065.                0    use NUL field terminator character in place of NL
  1066.  
  1067.           You can get on-line help information on these characters and
  1068.           their descriptions by specifying the ----FFFF???? option pair.
  1069.           (Escape the `?' character as your shell requires.)
  1070.           Additional information on field content can be found in the
  1071.           OOOOUUUUTTTTPPPPUUUUTTTT section.
  1072.  
  1073.           As an example, ``----FFFF ppppccccffffnnnn'' will select the process ID (`p'),
  1074.           command name (`c'), file descriptor (`f') and file name
  1075.           (`n') fields with an NL field terminator character; ``----FFFF
  1076.           ppppccccffffnnnn0000'' selects the same output with a NUL (000) field
  1077.           terminator character.
  1078.  
  1079.           _L_s_o_f doesn't produce all fields for every process or file
  1080.           set, only those that are available.  Some fields are
  1081.           mutually exclusive: file device characters and file
  1082.           major/minor device numbers; file inode number and protocol
  1083.           name; file name and stream identification; file size and
  1084.           offset.  One or the other member of these mutually exclusive
  1085.           sets will appear in field output, but not both.
  1086.  
  1087.           Normally _l_s_o_f ends each field with a NL (012) character.
  1088.           The 0 (zero) field identifier character may be specified to
  1089.           change the field terminator character to a NUL (000).  A NUL
  1090.           terminator may be easier to process with _x_a_r_g_s (_1), for
  1091.           example, or with programs whose quoting mechanisms may not
  1092.           easily cope with the range of characters in the field
  1093.           output.  When the NUL field terminator is in use, _l_s_o_f ends
  1094.           each process and file set with a NL (012).
  1095.  
  1096.           Two aids to producing programs that can process _l_s_o_f field
  1097.           output are included in the _l_s_o_f distribution.  The first is
  1098.           a C header file, _l_s_o_f__f_i_e_l_d_s._h, that contains symbols for
  1099.           the field identification characters, indexes for storing
  1100.           them in a table, and explanation strings that may be
  1101.           compiled into programs.  _L_s_o_f uses this header file.
  1102.  
  1103.           The second aid is a set of sample scripts that process field
  1104.           output, written in _a_w_k, _p_e_r_l 4, and _p_e_r_l 5.  They're located
  1105.           in the _s_c_r_i_p_t_s subdirectory of the _l_s_o_f distribution.
  1106.  
  1107.      BBBBLLLLOOOOCCCCKKKKSSSS AAAANNNNDDDD TTTTIIIIMMMMEEEEOOOOUUUUTTTTSSSS
  1108.           _L_s_o_f can be blocked by some kernel functions that it uses -
  1109.           _l_s_t_a_t(2), _r_e_a_d_l_i_n_k(2), and _s_t_a_t(2).  These functions are
  1110.           stalled in the kernel, for example, when the hosts where
  1111.           mounted NFS file systems reside become inaccessible.
  1112.  
  1113.           _L_s_o_f attempts to break these blocks with timers and child
  1114.           processes, but the techniques are not wholly reliable.  When
  1115.           _l_s_o_f does manage to break a block, it will report the break
  1116.  
  1117.  
  1118.  
  1119.      Page 17                                         (printed 7/31/95)
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  1127.  
  1128.  
  1129.  
  1130.           with an error message.  The messages may be suppressed with
  1131.           the ----tttt and ----wwww options.
  1132.  
  1133.           The default timeout value may be displayed with the ----???? or ----hhhh
  1134.           option, and it may be changed with the ----SSSS [_t] option.  The
  1135.           minimum for _t is two seconds, but you should avoid small
  1136.           values, since slow system responsiveness can cause short
  1137.           timeouts to expire unexpectedly and perhaps stop _l_s_o_f before
  1138.           it can produce any output.
  1139.  
  1140.           When _l_s_o_f has to break a block during its access of mounted
  1141.           file system information, it normally continues, although
  1142.           with less information available to display about open files.
  1143.  
  1144.      AAAAVVVVOOOOIIIIDDDDIIIINNNNGGGG KKKKEEEERRRRNNNNEEEELLLL BBBBLLLLOOOOCCCCKKKKSSSS
  1145.           You can use the ----bbbb option to tell _l_s_o_f to avoid using kernel
  1146.           functions that would block.  Some cautions apply.
  1147.  
  1148.           First, using this option usually requires that your system
  1149.           supply alternate device numbers in place of the device
  1150.           numbers that _l_s_o_f would normally obtain with the _l_s_t_a_t(2)
  1151.           and _s_t_a_t(2) kernel functions.  See the AAAALLLLTTTTEEEERRRRNNNNAAAATTTTEEEE DDDDEEEEVVVVIIIICCCCEEEE
  1152.           NNNNUUUUMMMMBBBBEEEERRRRSSSS section for more information on alternate device
  1153.           numbers.
  1154.  
  1155.           Second, you can't specify _n_a_m_e_s for _l_s_o_f to locate unless
  1156.           they're file system names.  This is because _l_s_o_f needs to
  1157.           know the device and inode numbers of files listed with _n_a_m_e_s
  1158.           in the _l_s_o_f options, and the ----bbbb option prevents _l_s_o_f from
  1159.           obtaining them.  Moreover, since _l_s_o_f only has device
  1160.           numbers for the file systems that have alternates, its
  1161.           ability to locate files on file systems depends completely
  1162.           on the availability and accuracy of the alternates.  If no
  1163.           alternates are available, or if they're incorrect, _l_s_o_f
  1164.           won't be able to locate files on the named file systems.
  1165.  
  1166.           Third, if the names of your file system directories that
  1167.           _l_s_o_f obtains from your system's mount table are symbolic
  1168.           links, _l_s_o_f won't be able to resolve the links.  This is
  1169.           because the ----bbbb option causes _l_s_o_f to avoid the kernel
  1170.           _r_e_a_d_l_i_n_k(2) function it uses to resolve symbolic links.
  1171.  
  1172.           Finally, using the ----bbbb option causes _l_s_o_f to issue warning
  1173.           messages when it needs to use the kernel functions that the
  1174.           ----bbbb option directs it to avoid.  You can suppress these
  1175.           messages by specifying the ----wwww option, but if you do, you
  1176.           won't see the alternate device numbers reported in the
  1177.           warning messages.
  1178.  
  1179.      AAAALLLLTTTTEEEERRRRNNNNAAAATTTTEEEE DDDDEEEEVVVVIIIICCCCEEEE NNNNUUUUMMMMBBBBEEEERRRRSSSS
  1180.           On some dialects, when _l_s_o_f has to break a block because it
  1181.           can't get information about a mounted file system via the
  1182.  
  1183.  
  1184.  
  1185.      Page 18                                         (printed 7/31/95)
  1186.  
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  1193.  
  1194.  
  1195.  
  1196.           _l_s_t_a_t(2) and _s_t_a_t(2) kernel functions, or because you
  1197.           specified the ----bbbb option, _l_s_o_f can obtain some of the
  1198.           information it needs - the device number and possibly the
  1199.           file system type - from the system mount table.  When that
  1200.           is possible, _l_s_o_f will report the device number it obtained.
  1201.           (You can suppress the report by specifying the ----wwww option.)
  1202.  
  1203.           You can assist this process if your mount table is supported
  1204.           with an /_e_t_c/_m_t_a_b or /_e_t_c/_m_n_t_t_a_b file that contains an
  1205.           options field by adding a ``dev=xxxx'' field for mount
  1206.           points that do not have one in their options strings.
  1207.  
  1208.           The ``xxxx'' portion of the field is the hexadecimal value
  1209.           of the file system's device number.  (Consult the _s_t__d_e_v
  1210.           field of the output of the _l_s_t_a_t(2) and _s_t_a_t(2) functions
  1211.           for the appropriate values for your file systems.) Here's an
  1212.           example from an SGI IRIX 5.2 /_e_t_c/_m_t_a_b for a file system
  1213.           remotely mounted via NFS:
  1214.  
  1215.                ... nfs rw,grpid,intr,nodevs,retry=6,dev=00100007 ...
  1216.  
  1217.           There's an advantage to having ``dev=xxxx'' entries in your
  1218.           mount table file, especially for file systems that are
  1219.           mounted from remote NFS servers.  When a remote server
  1220.           crashes and you want to identify its users by running _l_s_o_f
  1221.           on one of its clients, _l_s_o_f probably won't be able to get
  1222.           output from the _l_s_t_a_t(2) and _s_t_a_t(2) functions for the file
  1223.           system.  If it can obtain the file system's device number
  1224.           from the mount table, it will be able to display the files
  1225.           open on the crashed NFS server.
  1226.  
  1227.           Some dialects that do not use an ASCII /_e_t_c/_m_t_a_b or
  1228.           /_e_t_c/_m_n_t_t_a_b file for the mount table may still provide an
  1229.           alternative device number in their internal mount tables.
  1230.           This includes AIX, DEC OSF/1, FreeBSD, NetBSD, and Ultrix.
  1231.           _L_s_o_f knows how to obtain the alternative device number for
  1232.           these dialects and uses it when its attempt to _l_s_t_a_t(2) or
  1233.           _s_t_a_t(2) the file system is blocked.
  1234.  
  1235.           If you're not sure your dialect supplies alternate device
  1236.           numbers for file systems from its mount table, use this _l_s_o_f
  1237.           incantation to see if it reports any alternate device
  1238.           numbers:
  1239.  
  1240.                lsof -b
  1241.  
  1242.           Look for standard error file warning messages that begin
  1243.           ``assuming "dev=xxxx" from ...''.
  1244.  
  1245.      KKKKEEEERRRRNNNNEEEELLLL NNNNAAAAMMMMEEEE CCCCAAAACCCCHHHHEEEE
  1246.           _L_s_o_f is able to examine the kernel's name cache on some
  1247.           dialects and extract recently used path name components from
  1248.  
  1249.  
  1250.  
  1251.      Page 19                                         (printed 7/31/95)
  1252.  
  1253.  
  1254.  
  1255.  
  1256.  
  1257.  
  1258.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  1259.  
  1260.  
  1261.  
  1262.           it.  _L_s_o_f reports the ones it finds in the NAME column,
  1263.           starting with the file system name, followed by a space, two
  1264.           `-' characters, another space, and the name components it
  1265.           has located, separated by the `/' character.
  1266.  
  1267.           _L_s_o_f can report path name components for these dialects:
  1268.  
  1269.                DYNIX 3.0.12 (Purdue version)
  1270.                EP/IX 2.1.1
  1271.                FreeBSD 1.1.5.1, 2.0, and 2.0.5
  1272.                HP-UX 9.x and 10
  1273.                Motorola V/88 R40V4.2
  1274.                NetBSD 1.0 and 1.0A
  1275.                NEXTSTEP 3.[0123]
  1276.                OSF/1 2.0, 3.0, and 3.2
  1277.                PTX 2.1.[156] and 4.0.[23]
  1278.                SGI IRIX 5.3
  1279.                Solaris 2.[34]
  1280.                SunOS 4.1.[23]
  1281.                Ultrix 2.2, 4.2, and 4.3
  1282.  
  1283.           _L_s_o_f can't report path name components for these dialects:
  1284.  
  1285.                AIX 3.2.4, 3.2.5, 4.1, 4.1.1, and 4.1.2
  1286.                DC/OSx 1.1
  1287.                Linux
  1288.                Motorola V/88 R32V3
  1289.                Novell UnixWare 1.1, 1.1.1, and 1.1.2
  1290.                SCO OpenDesktop or OpenServer 1.1 and 3.0
  1291.                SGI IRIX 4.0.5H, 5.2, and 6.0
  1292.  
  1293.           _L_s_o_f may be able to report path name components for these
  1294.           dialects, but the code hasn't been tested on them:
  1295.  
  1296.                HP-UX 8.x
  1297.                NEXTSTEP 2.1
  1298.                OSF/1 1.3
  1299.                Solaris 2.[12]
  1300.                SunOS 4.1.[14]
  1301.                Ultrix 4.3 and 4.4
  1302.  
  1303.           If you want to know why _l_s_o_f can't report path name
  1304.           components for some dialects, consult section 3.1 of the
  1305.           _0_0_F_A_Q file of the _l_s_o_f distribution.
  1306.  
  1307.      DDDDEEEEVVVVIIIICCCCEEEE CCCCAAAACCCCHHHHEEEE FFFFIIIILLLLEEEE
  1308.           Examining all members of the /_d_e_v node tree with _s_t_a_t(2)
  1309.           functions can be time consuming.  What's more, the
  1310.           information that _l_s_o_f needs - device number, inode number,
  1311.           and path - rarely changes.
  1312.  
  1313.           Consequently, at revision 3.19 _l_s_o_f has begun maintaining an
  1314.  
  1315.  
  1316.  
  1317.      Page 20                                         (printed 7/31/95)
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323.  
  1324.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  1325.  
  1326.  
  1327.  
  1328.           ASCII text file of cached /_d_e_v information.  The standard
  1329.           path for the device cache file is /_t_m_p/._l_s_o_f__d_e_v__c_a_c_h_e, but
  1330.           the local system administrator may change the path when _l_s_o_f
  1331.           is compiled, or the default path for some systems my be
  1332.           slightly shorter.  (Consult the output of the ----???? or ----hhhh
  1333.           option for the current default path.)
  1334.  
  1335.           The ----DDDD option provides some control over the cache.  It
  1336.           allows you to request that the cache file be built in a
  1337.           specific location (bbbb[_p_a_t_h]); ignored (iiii); read but not
  1338.           rebuilt (rrrr[_p_a_t_h]); or read and rebuilt (uuuu[_p_a_t_h]).
  1339.  
  1340.           The uuuu function is the default when no ----DDDD option has been
  1341.           specified, using the default device cache file path
  1342.           /_t_m_p/._l_s_o_f__d_e_v__c_a_c_h_e.  This function tells _l_s_o_f to attempt
  1343.           to read and use the device cache file.  If it can't read the
  1344.           file, it will read information from the kernel with _s_t_a_t(2)
  1345.           function calls, then write an updated version of the file.
  1346.  
  1347.           The device cache file is stored by default in /tmp with read
  1348.           and write permission for owner, group, and user, so any _l_s_o_f
  1349.           call can access or rebuild it.  (You can change the device
  1350.           cache file path with the optional _p_a_t_h suffix of the bbbb, rrrr,
  1351.           and uuuu functions.)
  1352.  
  1353.           _L_s_o_f can detect that the file has been accidentally or
  1354.           maliciously modified by several sanity checks, including a
  1355.           sixteen bit Cyclic Redundancy Check (CRC) sum of the file's
  1356.           contents.  When _l_s_o_f senses something wrong with the file,
  1357.           it will attempt to remove the current one and create a new
  1358.           copy.
  1359.  
  1360.           On those rare occasions when a new device is added to the
  1361.           system, the device cache file may need to be recreated.
  1362.           Since _l_s_o_f compares the mtime of the device cache file with
  1363.           the mtime and ctime of the device directory (usually /dev)
  1364.           it often can detect that a new device has been added; in
  1365.           that case _l_s_o_f issues a warning message and rebuilds the
  1366.           device cache file, depending on the function specified in
  1367.           the ----DDDD option.
  1368.  
  1369.           If _l_s_o_f doesn't update the cache file when you believe it
  1370.           should, use the bbbb function of ----DDDD to make it recreate the
  1371.           file.
  1372.  
  1373.      DDDDIIIIAAAAGGGGNNNNOOOOSSSSTTTTIIIICCCCSSSS
  1374.           Errors are identified with messages on the standard error
  1375.           file.
  1376.  
  1377.           _L_s_o_f returns a one (1) if any error was detected, including
  1378.           the failure to locate any _n_a_m_e_s.  It returns a zero (0) if
  1379.           no errors were detected and if it was able to list
  1380.  
  1381.  
  1382.  
  1383.      Page 21                                         (printed 7/31/95)
  1384.  
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  1391.  
  1392.  
  1393.  
  1394.           information about all the specified _n_a_m_e_s.
  1395.  
  1396.           When _l_s_o_f cannot open access to /_d_e_v (or /_d_e_v_i_c_e) or one of
  1397.           its subdirectories, it issues a warning message and
  1398.           continues.  The warning message may be suppressed with the
  1399.           ----wwww option.  It may also have been suppressed by the system
  1400.           administrator when _l_s_o_f was compiled by the setting of the
  1401.           WARNDEVACCESS definition.  In the latter case, the output
  1402.           from _l_s_o_f'_s ----???? or ----hhhh option will contain the message:
  1403.  
  1404.                Warnings are disabled for inaccessible device directories.
  1405.  
  1406.      EEEEXXXXAAAAMMMMPPPPLLLLEEEESSSS
  1407.           To list all open files, use:
  1408.  
  1409.                lsof
  1410.  
  1411.           To list all open Internet, x.25 (HP-UX), and Unix domain
  1412.           files, use:
  1413.  
  1414.                lsof -n -U
  1415.  
  1416.           To list all files using any protocol on port 513 of host
  1417.           wonderland.cc.purdue.edu, use:
  1418.  
  1419.                lsof -i @wonderland.cc.purdue.edu:513
  1420.  
  1421.           To list all files using any protocol on any port of
  1422.           mace.cc.purdue.edu (cc.purdue.edu is the default domain),
  1423.           use:
  1424.  
  1425.                lsof -i @mace
  1426.  
  1427.           To list all open files for login name ``abe'', or user ID
  1428.           1234, or process 456, or process 123, or process 789, use:
  1429.  
  1430.                lsof -p 456,123,789 -u 1234,abe
  1431.  
  1432.           To list all open files on device /dev/hd4, use:
  1433.  
  1434.                lsof /dev/hd4
  1435.  
  1436.           To find the process that has /u/abe/foo open, use:
  1437.  
  1438.                lsof /u/abe/foo
  1439.  
  1440.           To send a SIGHUP to the processes that have /u/abe/bar open,
  1441.           use:
  1442.  
  1443.                kill -HUP `lsof -t /u/abe/bar`
  1444.  
  1445.           To find any open file, including an open Unix domain socket
  1446.  
  1447.  
  1448.  
  1449.      Page 22                                         (printed 7/31/95)
  1450.  
  1451.  
  1452.  
  1453.  
  1454.  
  1455.  
  1456.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  1457.  
  1458.  
  1459.  
  1460.           file, with the name /_d_e_v/_l_o_g, use:
  1461.  
  1462.                lsof /dev/log
  1463.  
  1464.           To find processes with open files on the NFS file system
  1465.           named /_n_f_s/_m_o_u_n_t/_p_o_i_n_t whose server is inaccessible, and
  1466.           presuming your mount table supplies the device number for
  1467.           /_n_f_s/_m_o_u_n_t/_p_o_i_n_t, use:
  1468.  
  1469.                lsof -b /nfs/mount/point
  1470.  
  1471.           To do the preceding search with warning messages suppressed,
  1472.           use:
  1473.  
  1474.                lsof -bw /nfs/mount/point
  1475.  
  1476.           To ignore the device cache file, use:
  1477.  
  1478.                lsof -Di
  1479.  
  1480.           To read the device cache file named Xyz in the current
  1481.           directory and update it, if necessary, use:
  1482.  
  1483.                lsof -DuXyz
  1484.  
  1485.           To obtain PID and command name field output for each
  1486.           process, file descriptor, file device number, and file inode
  1487.           number for each file of each process, use:
  1488.  
  1489.                lsof -FpcfDi
  1490.  
  1491.           To list the files at descriptors 1 and 3 of every process
  1492.           running the _l_s_o_f command for login ID ``abe'' every 10
  1493.           seconds, use:
  1494.  
  1495.                lsof -c lsof -a -d 1 -d 3 -u abe -r10
  1496.  
  1497.      BBBBUUUUGGGGSSSS
  1498.           Since _l_s_o_f reads kernel memory in its search for open files,
  1499.           rapid changes in kernel memory may produce unpredictable
  1500.           results.
  1501.  
  1502.           The lock status character (following the file descriptor) is
  1503.           derived under AIX from a test of the first filock structure
  1504.           of the gnode (see <sys/flock.h> and <sys/gnode.h>).
  1505.  
  1506.           _L_s_o_f can't search for files with restrictive access
  1507.           permissions by _n_a_m_e unless it is installed with root set-UID
  1508.           permission.  Otherwise it is limited to searching for files
  1509.           to which its user or its set-GID group (if any) has access
  1510.           permission.
  1511.  
  1512.  
  1513.  
  1514.  
  1515.      Page 23                                         (printed 7/31/95)
  1516.  
  1517.  
  1518.  
  1519.  
  1520.  
  1521.  
  1522.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  1523.  
  1524.  
  1525.  
  1526.           _L_s_o_f startup time is long on dialects where scanning the
  1527.           /_d_e_v (or /_d_e_v_i_c_e_s) directory and the mount table are slow
  1528.           operations.  Where possible - e.g., when the listing of only
  1529.           network files is requested - the scans are avoided or
  1530.           deferred.  When the device cache file is in use, scanning
  1531.           /_d_e_v is avoided once the cache file has been written.
  1532.  
  1533.           The display of the destination address of a raw socket
  1534.           (e.g., for _p_i_n_g) depends on the Unix operating system.  Some
  1535.           dialects store the destination address in the raw socket's
  1536.           protocol control block, some do not.
  1537.  
  1538.           _L_s_o_f can't always represent Solaris and SunOS device numbers
  1539.           in the same way that _l_s(1) does.  For example, the major and
  1540.           minor device numbers that the _l_s_t_a_t(2) and _s_t_a_t(2) functions
  1541.           report for the directory on which CD-ROM files are mounted
  1542.           (typically /_c_d_r_o_m) are not the same as the ones that it
  1543.           reports for the device on which CD-ROM files are mounted
  1544.           (typically /_d_e_v/_s_r_0).  (_L_s_o_f reports the directory numbers.)
  1545.  
  1546.           The system to which the Ultrix 2.2 port was directed is a
  1547.           local one that has been extensively updated with network
  1548.           features from the 4.3BSD Tahoe and Reno releases, so it may
  1549.           not match a standard Ultrix 2.2 system, if there is any such
  1550.           system still in use.
  1551.  
  1552.           The support for /proc file systems is available only for BSD
  1553.           and OSF dialects, Linux, and dialects derived from SYSV R4 -
  1554.           e.g., FreeBSD, IRIX 5.[23], NetBSD, Solaris, V/88
  1555.           R40V4.[23], UnixWare.  One SYSV R4 exception is EP/IX 2.1.1,
  1556.           where I have been unable to overcome conflicts between its
  1557.           svr3 and svr4 environments to build an _l_s_o_f with /proc file
  1558.           system support.  Some /proc file items - device number,
  1559.           inode number, and file size - are unavailable in some
  1560.           dialects.
  1561.  
  1562.           No text (ttttxxxxtttt) file descriptors are displayed for Linux
  1563.           processes.  All entries for files other than the current
  1564.           working directory, the root directory, and numerical file
  1565.           descriptors are labeled mmmmeeeemmmm descriptors.
  1566.  
  1567.      FFFFIIIILLLLEEEESSSS
  1568.           /_d_e_v/_k_m_e_m               kernel virtual memory device
  1569.  
  1570.           /_d_e_v/_m_e_m                physical memory device
  1571.  
  1572.           /_d_e_v/_s_w_a_p               system paging device
  1573.  
  1574.           /_t_m_p/._l_s_o_f__d_e_v__c_a_c_h_e    _l_s_o_f'_s device cache file
  1575.  
  1576.      AAAAUUUUTTTTHHHHOOOORRRRSSSS
  1577.           _L_s_o_f was written by Victor A. Abell <abe@cc.purdue.edu> of
  1578.  
  1579.  
  1580.  
  1581.      Page 24                                         (printed 7/31/95)
  1582.  
  1583.  
  1584.  
  1585.  
  1586.  
  1587.  
  1588.      LLLLSSSSOOOOFFFF((((8888))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((RRRReeeevvvviiiissssiiiioooonnnn----3333....33337777))))           LLLLSSSSOOOOFFFF((((8888))))
  1589.  
  1590.  
  1591.  
  1592.           the Purdue University Computing Center (PUCC), starting from
  1593.           the _f_s_t_a_t and _o_f_i_l_e_s programs.  Anthony Shortland
  1594.           <Anthony.Shortland@FMR.com> produced the Pyramid DC/OSx 1.1
  1595.           support.
  1596.  
  1597.           Vic acknowledges his debt to the work of Dan Bernstein,
  1598.           Michael ``Ford'' Ditto, Tom Dunigan, Alexander Dupuy, Vik
  1599.           Lall, Ray Moody, C. Spencer, Michael Spitzer and those who
  1600.           wrote Berkeley's _f_s_t_a_t program, all contributors to _l_s_o_f'_s
  1601.           predecessors.  Vic thanks Doug McKenzie for his HP-UX
  1602.           _p_r_o_c_t_o_r program and Rich Kulawiec for pointing it out.
  1603.  
  1604.           Finally, Vic is grateful to David Addison, Richard Allen,
  1605.           Marc Auslander, Ade Barkah, Anthony Baxter, John Beacom,
  1606.           Bruce Beare, Dave Bianchi, Achim Bohnet, Mark Bonsack, Bill
  1607.           Bormann, Michael Bryan, Bernt Christandl, Hans Petter
  1608.           Christiansen, Axel Clauberg, John Colgrave, Jim Cooper, Dave
  1609.           Curry, Ian Darwin, Hugh Dickins, Casper Dik, Greg Earle,
  1610.           Robert Ehrlich, Doug Eldred, Scott Ellentuch, Tom Endo, Mike
  1611.           Feldman, Bob Foertsch, Mike Fraser, Terry Friedrichsen,
  1612.           David DiGiacomo, Garner Halloran, Adam Hammer, Charles
  1613.           Hannum, Steinar Haug, Paul Hite, J. Nelson Howell, Gerrit
  1614.           Huizenga, John Jackson, Kurt Jaeger, Carl Johnson, Dion
  1615.           Johnson, Peter Jordan, Pasi Kaara, Frank Kaefer, Claus
  1616.           Kalle, Shane Kenney, Steve Kirsch, Przemek Klosowski, Paul
  1617.           Kranenburg, Alex Kreis, Markus Lautenbacher, Steve Lacey,
  1618.           Marty Leisner, Stuart Levy, Wendy Lin, Friedel Loinger,
  1619.           Michael Long, Pete Lord, Bela Lubkin, Horst Luehrsen,
  1620.           Andreas Luik, Michael Mackenzie, Lawrence MacIntyre, Benson
  1621.           Margulies, Claude Marinier, Fletcher Mattox, Dale McCluskey,
  1622.           Sean McDermott, Dwight McKay, William McVey, Jeffrey Mogul,
  1623.           Dave Morrison, Pat Myrto, Allan Nathanson, Chance Neale,
  1624.           Joseph J. Nuspl Jr., Craig B. Olofson, Dave Olson, Mark
  1625.           Peek, Ezra Peisach, Nathan Peterson, Dominique Petitpierre,
  1626.           Francois Pinard, Alex Podlecki, Philippe-Andre Prindeville,
  1627.           David Putz, Tim Ramsey, Stephan Rossi, Kevin Ruderman, Chris
  1628.           Schanzle, Hendrik G. Seliger, Michael Shields, Anthony
  1629.           Shortland, John Silva, Gerry Singleton, Leonard Sitongia,
  1630.           Kevin Smallwood, Douglas R. Smith, Dave Stevens, Jeff
  1631.           Stewart, Andreas Stolcke, Dale Talcott, Andy Thomas, Chris
  1632.           Timmons, Zdenko Tomasic, Linus Torvalds, Lenny Turetsky,
  1633.           Jules van Weerden, Robert Vernon, Jos Vos, Joel White,
  1634.           Patrick Wolfe, James Woodward, and Ron Young for their help
  1635.           in developing and improving _l_s_o_f.
  1636.  
  1637.      SSSSEEEEEEEE AAAALLLLSSSSOOOO
  1638.           access(2), awk(1), ff(1), fstat(8), fuser(1), kill(1),
  1639.           lstat(2), netstat(1), ofiles(8L), perl(1), ps(1),
  1640.           readlink(2), stat(2).
  1641.  
  1642.  
  1643.  
  1644.  
  1645.  
  1646.  
  1647.      Page 25                                         (printed 7/31/95)
  1648.  
  1649.  
  1650.  
  1651.